#pragma once
#include<d3d12.h>
#include<wrl/client.h>
#include"BestFitAllocator.h"
namespace Bonnie {
    using  Microsoft::WRL::ComPtr;
    class ResourceHeapAllocationManager
    {
    public:
        ID3D12Resource* allocate(const D3D12_RESOURCE_DESC* pDesc, D3D12_RESOURCE_STATES initialState);
    private:
        BestFitGPUAllocator::SharedPtr mpBestFitAllocator;
        ID3D12Device* md3dDevice = nullptr;
        ComPtr<ID3D12Heap> mHeap;
    };
}
